package top.tangyh.lamp.care.vo.update;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import java.time.LocalDateTime;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import top.tangyh.basic.base.entity.SuperEntity;
import java.io.Serializable;

/**
 * <p>
 * 表单修改方法VO
 * 新版本护理记录表单配置表
 * </p>
 *
 * @author zqb
 * @date 2024-08-05 15:12:19
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString(callSuper = true)
@Accessors(chain = true)
@EqualsAndHashCode
@Builder
@Schema(description = "新版本护理记录表单配置")
public class BCareRecordsConfigNewUpdateVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "")
    @NotNull(message = "请填写", groups = SuperEntity.Update.class)
    private Long id;

    /**
     * 标题
     */
    @Schema(description = "标题")
    @Size(max = 255, message = "标题长度不能超过{max}")
    private String title;
    /**
     * 权重 用来做排序
     */
    @Schema(description = "权重 用来做排序")
    private Integer weights;
    /**
     * 模块value
     */
    @Schema(description = "模块value")
    @Size(max = 200, message = "模块value长度不能超过{max}")
    private String dictValue;
    /**
     * 是否删除 0否1是
     */
    @Schema(description = "是否删除 0否1是")
    private Integer isDeleted;
    /**
     * 父id
     */
    @Schema(description = "父id")
    private Integer pid;
    /**
     * 显示行数
     */
    @Schema(description = "显示行数")
    private Integer recordNum;
    /**
     * 各模块对应的名称
     */
    @Schema(description = "各模块对应的名称")
    @Size(max = 255, message = "各模块对应的名称长度不能超过{max}")
    private String modelName;
    /**
     * 各模块对应的类型，比如是出量还是入量;
     * 观察项的类型：生命特征 呼吸参数 其他;
     * 数据示例：crl-in、crl-out
     * 
     */
    @Schema(description = "各模块对应的类型，比如是出量还是入量")
    @Size(max = 255, message = "各模块对应的类型，比如是出量还是入量长度不能超过{max}")
    private String modelType;
    /**
     * 标题宽度
     */
    @Schema(description = "标题宽度")
    private Integer titieWidth;
    /**
     * 标题类型：0 手动标题 1数据源标题
     */
    @Schema(description = "标题类型：0 手动标题 1数据源标题")
    private Integer titleType;
    /**
     * 是否隐藏:0 否 1 是
     */
    @Schema(description = "是否隐藏:0 否 1 是")
    private Integer isVisible;
    /**
     * 数据源字段的code，用来匹配数据接口的code
     */
    @Schema(description = "数据源字段的code，用来匹配数据接口的code")
    @Size(max = 255, message = "数据源字段的code，用来匹配数据接口的code长度不能超过{max}")
    private String dataCode;
    /**
     * 拼接符
     */
    @Schema(description = "拼接符")
    @Size(max = 255, message = "拼接符长度不能超过{max}")
    private String splicer;
    /**
     * 评估评分主表id,用来查询评分记录填值
     */
    @Schema(description = "评估评分主表id,用来查询评分记录填值")
    private Long pgId;
    /**
     * 观察项标识
     */
    @Schema(description = "观察项标识")
    @Size(max = 255, message = "观察项标识长度不能超过{max}")
    private String obsvCode;
    /**
     * 护理操作选项和出入量的code
     */
    @Schema(description = "护理操作选项和出入量的code")
    @Size(max = 255, message = "护理操作选项和出入量的code长度不能超过{max}")
    private String itemCode;
    /**
     * 观察项选项单位
     */
    @Schema(description = "观察项选项单位")
    @Size(max = 100, message = "观察项选项单位长度不能超过{max}")
    private String propUnit;
    /**
     * 
     */
    @Schema(description = "")
    private Integer obsvDataType;
    /**
     * 
     */
    @Schema(description = "")
    private Integer pgType;
    /**
     * 
     */
    @Schema(description = "")
    @Size(max = 255, message = "长度不能超过{max}")
    private String enumMap;
    /**
     * 
     */
    @Schema(description = "")
    @Size(max = 255, message = "长度不能超过{max}")
    private String vteCode;


}
